home *** CD-ROM | disk | FTP | other *** search
/ Quick PC 62 / Quick PC 62.iso / I386 / IIS5_01.CAB / IIS_JSBRWLS.ASP1 < prev    next >
Encoding:
Text File  |  1999-06-03  |  5.7 KB  |  246 lines

  1. <%@ LANGUAGE = VBScript %>
  2. <% 'Option Explicit %>
  3. <!-- #include file="../directives.inc" -->
  4.  
  5. <!--#include file="jsbrowser.str"-->
  6. <!--#include file="..\iisetfnt.inc"-->
  7.  
  8. <%
  9.  
  10. Dim browserobj, browser
  11. Set browserobj=Server.CreateObject("MSWC.BrowserType") 
  12. if Instr(Request.ServerVariables("HTTP_USER_AGENT"),"MSIE") then
  13.         browser = "IE" & CStr(browserobj.MajorVer)
  14. else
  15.         browser = "OTHER"
  16. end if
  17. %>
  18.  
  19. <HTML>
  20. <HEAD>
  21.     <TITLE></TITLE>
  22.     <SCRIPT LANGUAGE = "JavaScript">
  23.     
  24.         var DRIVE= 0
  25.         var FOLDER = 1
  26.         var FILE = 2
  27.     
  28.         function selItem(item)
  29.             {
  30.             parent.head.listFunc.selIndex=item;
  31.             <% if browser = "IE3" then %>                    
  32.                 self.location.href="JSBrwLs.asp#curItem";
  33.             <% else %>
  34.                 self.location.href="JSBrwLs.asp";            
  35.             <% end if %>                
  36.             }
  37.         
  38.         function delve(item)
  39.         {
  40.         }
  41.  
  42.         function collapse(item)
  43.         {
  44.             parent.head.cachedList[item].open = false;
  45.             parent.head.listFunc.loadList();            
  46.         }
  47.         
  48.                                 
  49.     </SCRIPT>
  50. </HEAD>
  51.  
  52. <BODY BGCOLOR="#FFFFFF" TEXT="black" TOPMARGIN = 1 LEFTMARGIN = 1 LINK="BLACK" VLINK="BLACK" ALINK="BLACK">
  53.  
  54.  
  55. <SCRIPT LANGUAGE="JavaScript">
  56.  
  57.     
  58.     var theList = parent.head.cachedList;
  59.     var listLength=theList.length;     
  60.     
  61.  
  62.  
  63.     document.write("<TABLE WIDTH='100%' BORDER=0 CELLPADDING = 0 CELLSPACING = 0><TR><TD>");
  64.  
  65.     for (i=0; i < listLength; i++) {
  66.         theParent=theList[i].parentid;        
  67.         if (theParent==null)
  68.         {
  69.             writeSelected(theList, i);    
  70.         }
  71.         else
  72.         {
  73.             curParent=theParent;
  74.             isOpen=true;
  75.             while(isOpen){
  76.                 if (theList[curParent].parentid==null)
  77.                 {
  78.                     isOpen=(theList[curParent].open);
  79.                     break;
  80.                 }
  81.                 if (!theList[curParent].open)
  82.                 {
  83.                     isOpen=false;
  84.                     break;
  85.                 }
  86.                 curParent=theList[curParent].parentid;
  87.             }
  88.  
  89.             if (isOpen)
  90.             {        
  91.                 writeSelected(theList, i);    
  92.             }
  93.  
  94.         }
  95.     }
  96.     document.write("</TD></TR></TABLE>");
  97.     
  98.     
  99.         function getGrandParent(item,numLevels)
  100.         {
  101.             var theList = parent.head.cachedList;
  102.             var theItem=item;
  103.             for (z=0; z < numLevels; z++) {
  104.                 theItem=theList[theItem].parentid;    
  105.             }            
  106.             return theItem;
  107.         }
  108.  
  109.         function setIcon(theList,i)
  110.         {
  111.             if (theList[i].open)
  112.             {
  113.                 return theList[i].openicon;    
  114.             }
  115.             else
  116.             {
  117.                 return theList[i].icon;
  118.             }
  119.             
  120.         }
  121.  
  122.     
  123.         function writeIndent(theList, i)
  124.         {
  125.             var SPACE_IMG = "space.gif"
  126.             var LINE_IMG = "line.gif"
  127.             var dispstr = "";
  128.             var theLevel=theList[i].level;            
  129.             
  130.             for (var x=1; x < theLevel; x++)
  131.             {
  132.                 var gParent=getGrandParent(i,theLevel-x)
  133.                 
  134.                 if (theList[gParent].lastChild)
  135.                 {
  136.                     dispstr += "<IMG SRC='" + SPACE_IMG + "' WIDTH=16>";
  137.                 }
  138.                 else
  139.                 {        
  140.                     dispstr += "<IMG SRC='" + LINE_IMG + "' WIDTH=16>";
  141.                 }
  142.             }
  143.             return dispstr;
  144.         }
  145.     
  146.         function writeSelected(theList, i)        
  147.         {        
  148.             var REDRAW = "true";
  149.             var MINUS_IMG = "minus.gif"
  150.             var MINUS_LAST_IMG = "minusl.gif"
  151.             var PLUS_IMG = "plus.gif"
  152.             var PLUS_LAST_IMG = "plusl.gif"
  153.             var EMPTY_IMG = "blank.gif"
  154.             var EMPTY_LAST_IMG = "blankl.gif"            
  155.             
  156.             var isSelected = (eval(parent.head.listFunc.selIndex)== i);
  157.         
  158.             dispstr = "<TABLE BORDER=0 CELLPADDING=0 CELLSPACING=0><TR><TD>";
  159.             dispstr += writeIndent(theList, i)                            
  160.             dispstr += "</TD><TD>";
  161.             
  162.             if( i < listLength )
  163.             {
  164.                 
  165.                 if (theList[i].open)
  166.                 {
  167.                     dispstr += "<A HREF='javascript:collapse("+i+")'><IMG SRC='";
  168.                     if (!theList[i].lastChild)
  169.                     {
  170.                         dispstr += MINUS_IMG;    
  171.                     }
  172.                     else
  173.                     {
  174.                         dispstr += MINUS_LAST_IMG;    
  175.                     }
  176.                     dispstr += "' WIDTH=16 HEIGHT=18 Border=0 ALT='<%= L_COLLAPSE_TEXT %>'></A>";
  177.                 }
  178.                 else
  179.                 {
  180.                     dispstr += "<A HREF='javascript:parent.head.listFunc.expandItem("+i+"," + REDRAW + ")'><IMG SRC='";
  181.                     if (!theList[i].lastChild)
  182.                     {
  183.                         dispstr += PLUS_IMG;
  184.                     }
  185.                     else
  186.                     {
  187.                         dispstr += PLUS_LAST_IMG;
  188.                     }
  189.                     dispstr += "' WIDTH=16 HEIGHT=18  Border=0 ALT='<%= L_EXPAND_TEXT %>'></A></TD>";
  190.                 }
  191.             }
  192.             else
  193.             {
  194.                 dispstr += "<IMG SRC='";
  195.                 if (!theList[i].lastChild){
  196.                     dispstr += EMPTY_IMG;    
  197.                 }
  198.                 else{
  199.                     dispstr += EMPTY_LAST_IMG;    
  200.                 }    
  201.                 dispstr += "' WIDTH=16 HEIGHT=18 Border=0>";            
  202.             }
  203.  
  204.             dispstr += "</TD>";                    
  205.             
  206.             if (!isSelected)
  207.             {
  208.                 dispstr += "<TD><%= sFont("","","",True) %><A HREF='javascript:selItem("+i+");'>";
  209.                 dispstr += "<IMG BORDER = 0 SRC='" + setIcon(theList,i) +  "'></A> </TD>";
  210.                 dispstr += "<TD><%= sFont("","","",True) %><A HREF='javascript:selItem("+i+");'>";                            
  211.                 dispstr += theList[i].fname + "</A></TD></TR>";
  212.             }
  213.             else
  214.             {    
  215.                 if (theList[i].open)
  216.                 {
  217.                     dispstr += "<TD><A NAME='curItem'></A><%= sFont("","","",True) %><A HREF='javascript:collapse("+i+")'>";
  218.                     dispstr += "<IMG BORDER = 0 SRC='" + setIcon(theList,i) + "'></A> </TD>";
  219.                     dispstr += "<TD BGCOLOR='#FFCC00'><%= sFont("","","",True) %><A HREF='javascript:collapse("+i+")'>";                        
  220.                     dispstr += theList[i].fname + "</A></TD></TR>";
  221.                 }
  222.                 else
  223.                 {
  224.                     dispstr += "<TD><A NAME='curItem'></A><%= sFont("","","",True) %><A HREF='javascript:parent.head.listFunc.expandItem("+i+"," + REDRAW + ")'>";
  225.                     dispstr += "<IMG BORDER = 0 SRC='" + setIcon(theList,i) + "'></A> </TD>";
  226.                     dispstr += "<TD BGCOLOR='#FFCC00'><%= sFont("","","",True) %><A HREF='javascript:parent.head.listFunc.expandItem("+i+"," + REDRAW + ")'>";                        
  227.                     dispstr += theList[i].fname + "</A></TD></TR>";
  228.                 }
  229.             }
  230.             
  231.             dispstr += "</TABLE>"
  232.             document.write(dispstr);
  233.         }
  234.  
  235. <%
  236.     ' Netscape and IE3 have problems refreshing the list properly.
  237.     if browser <> "IE3" and browser <> "OTHER" then
  238. %>
  239.     self.location.href = "JSBrwLs.asp#curItem";
  240. <% end if %>                
  241.  
  242. </SCRIPT>
  243.  
  244. </BODY>
  245. </HTML>
  246.